package net.tksl.crm.dao.impl;

import java.util.List;

import net.tksl.crm.dao.UsuarioDao;
import net.tksl.crm.dao.bd.UsuarioSistemaBD;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;

@Repository("usuarioDaoImpl")
public class UsuarioDaoImpl implements UsuarioDao {

	@Autowired
	@Qualifier("sessionFactory")
	private SessionFactory sessionFactory;
	
	@SuppressWarnings("unchecked")
	@Override
	public UsuarioSistemaBD obtenerUsuarioPorNombre(String nombre) {
		String hql = "from UsuarioSistemaBD u where u.usuario = ?";
		Session sesion = sessionFactory.getCurrentSession();
		Query query = sesion.createQuery(hql);
		
		int i = 0;
		query.setParameter(i,nombre);i++;
		
		List<UsuarioSistemaBD> lista = (List<UsuarioSistemaBD>)query.list();
		
		UsuarioSistemaBD usuario = null;
		if(lista!=null && lista.size()>0){
			usuario = lista.get(0);
		}
		return usuario;
	}

}